package demo8;

import com.alibaba.druid.pool.DruidDataSource;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;

/**
 * @Configuration是Spring容器提供的一个注释
 * 被该注解标注的类被认定为是Spring的配置类
 * 可以辅助容器进行初始化操作
 *
 * @ComponentScan注解
 * 在配置类上使用该注解，用于告知容器扫描那个包
 */
@Configuration
@ComponentScan("demo8")
public class Config {
    /*
    @Bean注解
    当我们希望让Spring容器管理一个对象，
    但是该对象无法由我们添加注释@Component时，
    我们可以通过这种方式主动向容器中添加对象

     */
    @Bean
    public Student initStudent(){
        return new Student();
    }
    @Bean
    public DruidDataSource initDruidDataSource(){
        DruidDataSource ds=new DruidDataSource();
        ds.setUrl("jdbc:mysql://localhost:3306/tedu?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&rewriteBatchedStatements=true");
        ds.setUsername("root");
        ds.setPassword("root");
        ds.setInitialSize(5);
        ds.setMaxActive(30);
        return ds;
    }
}
